Skip to main content

Rabbit Chaos API Roadmap

  • Rewrite Protocol Fault experiment
    • Write proper handling for missed protocol frame
  • Implement Message Store Chaos
    • input/output (I/O) bandwidth exhaustion — slow writes and reads
    • I/O fault — message write errors
  • Implement vhost filtering
  • Implement ongoing experiments feature.
  • Support experiments for cluster mode

Message Store Notes: One way to do so is overriding behavior of queue persistency. We would need to override behavior in both msg_store and classic_queue_store_v2 since the persistency mechanism changes due to message sizes. This approach seems hacky and error-prone. A safer direction may be for the Chaos API to use extended Berkeley Packet Filter (eBPF) to observe or inject file-I/O behavior at the kernel boundary. https://github.com/iovisor/bcc/blob/master/tools/filetop.py https://github.com/iovisor/bcc?tab=readme-ov-file https://github.com/oskardrums/ebpf

kernel function might have changed to kernel_write

Share: